package com.app.ryjy.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 民族枚举
 */
@AllArgsConstructor
@Getter
public enum EthnicityEnum {
    // 汉族
    HAN("汉族", "01", -1),
    // 蒙古族
    MONGOLIAN("蒙古族", "02", -1),
    // 回族
    HUI("回族", "03", -1),
    // 藏族
    TIBETAN("藏族", "04", -1),
    // 维吾尔族
    UIGHUR("维吾尔族", "05", -1),
    // 苗族
    MIAO("苗族", "06", -1),
    // 彝族
    YI("彝族", "07", -1),
    // 壮族
    ZHUANG("壮族", "08", -1),
    // 布依族
    BUYI("布依族", "09", -1),
    // 朝鲜族
    KOREAN("朝鲜族", "10", -1),
    // 满族
    MAN("满族", "11", -1),
    // 侗族
    DONG("侗族", "12", -1),
    // 瑶族
    YAO("瑶族", "13", -1),
    // 白族
    Bai("白族", "14", -1),
    // 土家族
    TUJIA("土家族", "15", -1),
    // 哈尼族
    HANI("哈尼族", "16", -1),
    // 哈萨克族
    KAZAKH("哈萨克族", "17", -1),
    // 傣族
    DAI("傣族", "18", -1),
    // 黎族
    LI("黎族", "19", -1),
    // 傈傈族
    LISOU("傈傈族", "20", -1),
    // 佤族
    VA("佤族", "21", -1),
    // 畲族
    SHE("畲族", "22", -1),
    // 高山族
    GAOSHAN("高山族", "23", -1),
    // 拉祜族
    LAHU("拉祜族", "24", -1),
    // 水族
    SHUI("水族", "25", -1),
    // 东乡族
    DONGXIANG("东乡族", "26", -1),
    // 纳西族
    NAXI("纳西族", "27", -1),
    // 景颇族
    JINGPO("景颇族", "28", -1),
    // 柯尔克孜族
    KIRGIZ("柯尔克孜族", "29", -1),
    // 土族
    TU("土族", "30", -1),
    // 达翰尔族
    DAHUR("达翰尔族", "31", -1),
    // 仫佬族
    MULAO("仫佬族", "32", -1),
    // 羌族
    QIANG("羌族", "33", -1),
    // 布朗族
    BLANG("布朗族", "34", -1),
    // 撒拉族
    SALAR("撒拉族", "35", -1),
    // 毛南族
    MAONAN("毛南族", "36", -1),
    // 仡佬族
    GELAO("仡佬族", "37", -1),
    // 锡伯族
    XIBE("锡伯族", "38", -1),
    // 阿昌族
    ACHANG("阿昌族", "39", -1),
    // 普米族
    PUMI("普米族", "40", -1),
    // 塔吉克族
    TAGIK("塔吉克族", "41", -1),
    // 怒族
    NU("怒族", "42", -1),
    // 乌孜别克族
    UZBEK("乌孜别克族", "43", -1),
    // 俄罗斯族
    RUSSIAN("俄罗斯族", "44", -1),
    // 鄂温克族
    EVENK("鄂温克族", "45", -1),
    // 德昂族
    DEANG("德昂族", "46", -1),
    // 保安族
    BONAN("保安族", "47", -1),
    // 裕固族
    YUGUR("裕固族", "48", -1),
    // 京族
    GANJI("京族", "49", -1),
    // 塔塔尔族
    TATAR("塔塔尔族", "50", -1),
    // 独龙族
    DULONG("独龙族", "51", -1),
    // 鄂伦春族
    ORON("鄂伦春族", "52", -1),
    // 赫哲族
    HEZHEN("赫哲族", "53", -1),
    // 门巴族
    MONBA("门巴族", "54", -1),
    // 珞巴族
    LHOBA("珞巴族", "55", -1),
    // 基诺族
    JINO("基诺族", "56", -1),
    // 其他
    OTHER("其他", "99", -1);

    private final String desc;
    private final String code;
    private final int bizCode;

    /**
     * 根据 bizCode 获取 code
     *
     * @param bizCode bizCode
     * @return code
     */
    public static String getCodeByBizCode(int bizCode) {
        for (EthnicityEnum ethnicity : values()) {
            if (ethnicity.getBizCode() == bizCode) {
                return ethnicity.getCode();
            }
        }
        throw new RuntimeException("bizCode 不存在");
    }

    public static void main(String[] args) {
        System.out.println(EthnicityEnum.getCodeByBizCode(1));
    }
}